// import {isPrime} from "hy"

function isPrime(num:number):boolean {
    // 质数的特点, 只能被1和自身整除
    // 这里比如传递进来的是8
    // 下面就是判断其是否能被2到其之间的数整除2 -7
    // 只需要判断数字对应的平方根之前的数字是否能被整除即可，因为要想乘以其他数据得到结果，就必须要有一个数字是在其平方根之下的
    // 从 O(n)降到 O(log n)
    const sqrt = Math.sqrt(num)

    for( let i = 2; i <= sqrt; i++ ) {
        if(num % i == 0 ) return false
    }

    return true
}
console.log(isPrime(13));
console.log(isPrime(7));
console.log(isPrime(8));
console.log(isPrime(9));
console.log(isPrime(21));
